/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ru.icq.accounts;

import java.util.Collection;
import org.apache.log4j.Logger;
import ru.icq.io.connections.ConnectionsCustom;

/**
 * Запись о пользователях внутри аккаунта.
 * @author Носов А.В.
 */
public class EntryjICQ {

    // Variables declaration
    private static final Logger log = Logger.getLogger(EntryjICQ.class);
    
    /** Идентификатор аккаунта, к которому принадлежит пользователь */
    private String account;
    /** соединение */
    private ConnectionsCustom connection;
    /** Список групп, в которых состоит пользователь */
    private Collection<GroupjICQ> groups;
    /** Ник пользоватлея */
    private String user;
    /** Настоящии имя пользователя */
    private String name;
    /** */
    private String type;
    // End of variables declaration

    public EntryjICQ(ConnectionsCustom connectionsCustom) {
        this.connection = connectionsCustom;
    }

    /**
     * Возвращает идетификатор аккаунта, к которому принадлежить пользователь.
     * @return идентификатор
     */
    public String getAccount() {
        return account;
    }

    /**
     * Устанавливает идентификатор акаунта, к которому принадлежит пользователь.
     * @param account идентификатор
     */
    public void setAccount(String account) {
        this.account = account;
    }

    /**
     * Возвращает соединение.
     * @return соединение
     */
    public ConnectionsCustom getConnectionCustom() {
        return connection;
    }

    /**
     * Возвращает список групп, к которым принадлежит пользователь.
     * @return  список групп
     */
    public Collection<GroupjICQ> getGroup() {
        return groups;
    }

    /**
     * Устанавливает список групп, к котороым принадлежит пользователь.
     * @param group список групп
     */
    public void setGroup(Collection<GroupjICQ> group) {
        this.groups = group;
    }

    /**
     * Возвращает имя пользователя.
     * @return имя
     */
    public String getName() {
        return name;
    }

    /**
     * Устанавливает имя пользователя.
     * @param name имя
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * Возвращает тип пользователя.
     * @return тип
     */
    public String getType() {
        return type;
    }

    /**
     * Устанавливает тип пользователя.
     * @param type тип
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * Возвращает ник пользователя.
     * @return ник
     */
    public String getUser() {
        return user;
    }

    /**
     * Устанавливает ник пользователя.
     * @param user ник
     */
    public void setUser(String user) {
        this.user = user;
    }

    @Override
    public String toString() {
        return user;
    }
}
